package com.kingyun.gpsinspection.purificationservice.facade.service.iam.scyx;

import com.alibaba.fastjson.JSONObject;
import com.kingyun.gpsinspection.purificationservice.facade.model.iam.scyx.DeviceSumTempInfo;
import com.kingyun.gpsinspection.purificationservice.facade.model.iam.scyx.DeviceSumTempInfoVo;

/**
 * Created by ${yangsy} on 2017/3/16.
 */
public interface DeviceSumTempInfoService {

    /**
     * 删除操作
     *
     * @param deviceSumTempId 设备台账模板Id
     * @param isDeleteAll     是否删除所有关联的数据
     * @return
     */
    int deleteByPrimaryKey(String deviceSumTempId, boolean isDeleteAll);


    DeviceSumTempInfo selectByPrimaryKey(String deviceSumTempId);


    JSONObject list(DeviceSumTempInfo deviceSumTempInfo);

    /**
     * 新增操作
     *
     * @param record    设备台账模板信息
     * @param submitStr 子类型信息
     * @return
     */
    int insertSelective(DeviceSumTempInfo record, String submitStr);

    /**
     * 修改操作
     *
     * @param record    设备台账模板信息
     * @param submitStr 子类型信息
     * @return
     */
    int updateByPrimaryKeySelective(DeviceSumTempInfo record, String submitStr);

    /**
     * 获取台账模板配置的信息
     *
     * @param deviceSumTempId 设备台账模板Id
     * @return
     */
    //List<DeviceSumTempInfoVo> getDSTConfigInfo(String deviceSumTempId);

    /**
     * 台账表头信息
     *
     * @param deviceSumTempInfoVo
     * @return
     */
    Object getDeviceTitles(DeviceSumTempInfoVo deviceSumTempInfoVo);

    /**
     * 台账内容
     *
     * @param deviceSumTempInfoVo
     * @return
     */
    JSONObject getDeviceContents(DeviceSumTempInfoVo deviceSumTempInfoVo);

    /**
     * 查询操作 查询子类型信息
     * @param deviceSumTempId
     * @return
     */
    DeviceSumTempInfo selectSubTypeInfo(String deviceSumTempId);
}
